Method of operating a network

ABSTRACT

A method is proposed for operating a network with several subscribers in the network. For this purpose, the network has at least one switch ( 10, 11, 12 ), at least two terminals and at least one controller. According to the invention, the controller can now communicate with one of the terminals via an application protocol. For this purpose, data is sent and/or received as data packets. In order to be able to schedule the communication, time slots are provided for sending the data packets that are adapted to a maximum possible packet size. For this purpose, the time slots have a start time and an end time so that they can overlap in different branches of the network. To optimize communication time, the packet sizes ( 5 ) can be changed. To avoid wasting bandwidth in the network, the time slots are adapted to the packet size accordingly by changing the start times and the end times ( 6 ).

The present invention relates to a method of operating a network, in particular an automation network.

The method is intended to be usable for integrating components of an automation network into an existing multifunction network, for example into an Ethernet network, in particular into a fieldbus network designed as an Ethernet bus.

In existing automation networks, such as SERCOS III, there is often the restriction that devices of the automation network are the sole users of the network. And although the automation network is also designed as an Ethernet network, it is not trivial to integrate such an automation network into an existing network.

These difficulties consist of restrictions, for example in terms of network topology, which make integration into other networks difficult or impossible.

It should also become possible to integrate automation networks into TSN networks. TSN was developed to enable time-sensitive data transfers in a network. TSN functions also make transmission times predictable. The TSN network is standardized under IEEE 802.1.

In the example of a SERCOS III network, the packet size of the data to be sent and/or received can be specified at the start of a communication between two nodes in the network. Since it is not yet known at the beginning of the communication how much data will be sent at all, the packet size of the data is initially maximized.

During communication, the packet size can then be adjusted to the amount of data in order to optimize communication in the network. Especially when using a TSN network, the setting of the packet size is an aid to the predictability of the data transmission.

For this purpose, corresponding time slots are provided for the data packets, within which the data packets are sent. The individual time slots can then be added together to calculate the total communication time, because all data packets are sent or received within these time slots.

A correspondingly known communication in an automation network is known, for example, from WO 2018/215209 [U.S. Pat. No. 11,336,657]. Here, the devices are mainly connected in a line topology and enabled by corresponding communication through data telegrams.

WO 2017/093014 [U.S. Pat. No. 11,153,416] also discloses a method for industrial communication via TSN. Here, basic communications and protocols in a TSN-enabled network are disclosed.

EP 1 198 926 [U.S. Pat. No. 7,272,152] discloses an automation network with data communication that uses time slots. Changing the data packets within the time slots is also disclosed.

US 2011/0182300 [U.S. Pat. No. 8,295,287] further discloses a network using time slots. The individual data packets can be transferred to other time slots. However, this method involves the risk that the time slot required for transfer is already occupied by another data stream.

The object of the present invention is thus to integrate an automation network into an existing network, in particular into a TSN network. Furthermore, the data transmission is to be time-optimized with respect to the communication between network nodes.

This object is attained by the features of the main claim.

A method is thus proposed for operating a network with several subscribers and at least one switch. The switch serves as a node in the network and can send or receive data in all directions of the node. Furthermore, the switch includes programmable logic that can store and use the relationships to the other subscribers in the network.

Also, the network contains at least two terminals and a controller. The controller is also referred to as the master in an automation network.

According to the invention, the controller can send data to a specific terminal via an application protocol in order to control it. The application protocol is implemented via the application layer of the OSI network model. This means that communication via the application protocol is implemented in OSI layer 7.

In accordance with the specification for Internet networks, the data sent in this way is divided into data packets and sent via the network's link layer. This means that the individual data packets are transmitted within the link layer or the network layer, i.e. layer 2 or 3 of the OSI model. The data packets are thus transmitted in layer 2 as frames or in layer 3 as packets.

Advantageously, the data is sent as a TSN data stream. This means that the data stream of the sent and/or received data is provided with time-sensitive features according to IEEE 802.1.

According to the invention, time slots are now provided for sending and/or receiving the data. These time slots are initially adjusted to a maximum and/or minimum or any other conceivable packet size or number of packets when a communication is initiated. At the beginning of a communication, the amount of data to be sent is not yet fixed, so that the time slots are first set to the maximum packet size or number of packets.

The time slots each contain a start time and an end time. Thus, all time slots have a runtime from which the transmission time of the data can be calculated, namely by adding the runtimes of the time slots. Alternatively or additionally, the transmission time of the data can be calculated purely by the transmission speed and data quantity and is not influenced by the time slots.

The initiation of the communication can be done by an authorized subscriber in the network. When using a SERCOS III network, this subscriber will usually be a controller or master.

During communication, the packet size of the data packets can be optimized. This means that the initial packet size is reduced or increased during communication within the limits of the minimum and maximum packet size and number of packets. This changes the occupancy of the available time slot by the data packet. As a result, the entire transmission either takes longer (due to a larger data volume) or is shortened (due to a reduced data volume).

The oversized time slots ensure that communication is not artificially slowed down, for example, by already scheduling a reduced packet size. After the communication has been finally established and the application has negotiated the final data volume, the reservation of the time slots can be optimized. Up to now, it is only known that the time slot ends are adapted to the communication demand, since up to now the initial reservation has set the time slot start to the maximum packet size. This creates gaps in which the packets on the switches have to pause until the next time slot starts.

Optimizing such gaps would mean that all time slots would be moved forward. This means that the communication duration changes during operation, which is known as jitter. In streaming applications in particular, such jitter must be avoided, since it prevents effective data transmission on the one hand and causes gaps or dropouts at the receiver on the other. In the case of a SERCOS III network, it will enter an error state as soon as jitter occurs.

To avoid jitter, the reduced time slots must be shifted. To avoid the above-described error condition, the reduction and shifting of the time slots must actually happen simultaneously, which has not been practically possible so far.

However, because the time slots are initially designed for the minimum and/or maximum packet size, it is possible to shift not only the end times but also the start times. This is because the oversizing of the time slots at the start of communication means that the time slots can now overlap in time and the start times of the time slots are before the start time of the data packets actually sent.

For overlapping the time slots, they can preferably be adapted to the minimum packet size to be expected. This is done by selecting the start times of the individual time slots in such a way that the subsequent time slot has a start time that corresponds to the minimum packet size to be expected.

The fact that the time slots overlap in time means that a gap can be avoided between the individual data packets when they are reduced in size. The time slots can then be adapted to the packet size of the data packets via the start and end times.

The fact that no gap happens when data packets are reduced avoids the jitter effect and keeps a data stream contiguous. The adaptation of the time slots is therefore not time-critical in the claimed method. Accordingly, packet size change can happen decoupled from the adjustment of the time slots without any jitter effect or error condition occurring.

In this case, control of the data packets and their size is performed by a protocol in layer 2 or 3 of the OSI model, so that the application protocol does not recognize the optimization of the data transmission.

The switches should be located at the nodes of the networks, preferably between the controller and the terminals. This allows different topologies to be interconnected in a network starting at these nodes.

The terminals of the automation networks can be connected in series, in a ring or in a line, depending on the topology. This also corresponds to the normal function of an automation network. In principle, several automation networks can thus be interconnected in a network by the switches so that subscribers not belonging to the automation network can also be part of the same network.

Preferably, it is suggested that the controller and the terminals are parts of an automation bus. This bus is then operated as an automation network with Ethernet specification. The number of controllers and terminals in the network is not limited.

As a special embodiment, it is possible to replace the switches with routers, since routers also include the functions of switches. Also, further subscribers such as PCs, servers and/or hubs can be present.

Preferably, it is proposed to configure the controller and/or the switch (or the router) by a network management that is preferably software, in order to be able to perform the desired progression of data from a network subscriber to the terminal.

Further features are shown in the attached drawing.

Therein:

FIG. 1 is a block diagram of the previous problem of a packet size change;

FIG. 2 is a block diagram of the process according to the invention; and

FIG. 3 shows operation phases using the example of a SERCOS III network;

FIG. 1 is a schematic representation of part of a communication in a network. The data to be transmitted is divided into data packets and sent or received in the currently available bandwidth of the network.

The data packets are shown in the figure as diagonally shaded areas. As an example, the communication contains three data packets that are sent and received over different cycles of the network. The term cycle is understood according to IEEE 802.1Q (“Time-Aware Shaping”). The cycles are shown here as dotted areas and can be addressed via three switches 10, 11, 12.

Time slots are provided for the data packets that are represented by vertical hatching. At the start of communication, these time slots are set to the maximum packet size. This means that the start times of the time slots correspond to the start times of the data packets. The end times of the time slots may be later than the end times of the data packets due to the maximum-size assumption. The maximum packet size is thus determined by the amount of data and the available bandwidth. This is standardized in IEEE 802.1Qbv.

To optimize communication times, respective packet sizes of the data packets are changed to a time optimum. This shortens the data packets as shown under step 1.

The shortening of the data packets and the time slots that have remained the same length so far result in time gaps between the individual data packets. The individual time slots are designed to be contiguous, which means that the end of one time slot simultaneously represents the start of another time slot. Thus, this results in continuous communication. In the case of the reduced data packets, however, the available bandwidth is not effectively utilized.

To use the bandwidth effectively, the time slots can be shortened by matching the end times of the time slots to the end times of the data packets. This is illustrated in step 2. However, this causes gaps in the data stream during communication, which is known as the jitter effect and causes errors in the network. In the case of a SERCOS III network, this causes an error condition.

Therefore, the time slots must be offset or shifted so that a coherent data stream is created again. This is shown in step 3. To avoid the error condition, step 2 and 3 would have to be executed together (at the same time), which corresponds to step 4, but is practically not feasible, since the shifting of a time slot is also error-prone. A shift could cause a time slot to enter a time slot that has already been reserved.

FIG. 2 shows the solution to the above problem according to the invention. Here, time slots are also generated at the start of communication and are adapted to the maximum possible packet sizes. However, according to the invention, the time slots are designed in such a way that they overlap. A continuous data stream is ensured by the different start times of the data packets within the time slots. Thus, the start times of the time slots are no longer identical to the start times of the data packets.

If the data packets are now reduced in size, the overlap of the time slots can still ensure a continuous data stream without an error condition occurring. This is shown in step 5.

The communication would now still work without errors, but would not be effective due to the length of the time slots.

Accordingly, it is proposed to adapt the time slots to the reduced data packets, such that not only the end times of the time slots are adapted to the data packets, but also the start times. This is shown in step 6.

This procedure enables optimization of the size of the data packets without having to shift the time slots. Also, the adaptation of the time slots to the data packets is decoupled from the reduction of the data packets, so that a possible source of error is eliminated.

In FIG. 3 , the procedure is explained on the basis of SERCOS III operation phases. First, communication is initialized by means of SERCOS III (NRT) and then, toward M, the topology of the network is defined according to the application protocol (CP0).

Then, in direction S, the configuration is loaded and executed (CP1). In the next step in direction S, the data packet size is defined and optimized during communication (CP2). The terminals that act as communication receivers, are jitter-sensitive from this point on.

CP3 comprises the actual communication with optimized packet sizes. CP4 terminates the communication and enables the next communication that works according to the same principle.

Accordingly, the process according to the invention is executed within the marked area. Accordingly, the initial packet size and time slot size are s determined from CP2 and optimized between CP2 and CP3 (see steps 5 and 6 from FIG. 2 ).

The present application is not limited to the previous features. Rather, further embodiments are conceivable. For example, instead of at least one switch, a router or a server could also be used. Also, further subscribers, such as PCs or hubs, could be used. 

1. A method of operating a network with multiple subscribers in the network and comprising at least one switch, at least two terminals, and at least one controller, the method comprising the steps of: the controller communicating with one of the terminals via an application protocol by sending or receiving data as data packets, providing time slots having respective start and end times that are adapted to a maximum possible packet size for sending the data packets, and, when packet sizes are changed, adapting the time slots to the packet size by changing the start times and the end times.
 2. The method according to claim 1, wherein the start times are adapted to a minimum possible packet size.
 3. The method according to claim 1, wherein the network is an automation network.
 4. The method according to claim 1, wherein sizes of the time slots are adjusted to the maximum possible packet size during an initialization of the communication via the controller.
 5. The method according to claim 4, wherein the time slots overlap in time.
 6. The method according to claim 1, wherein the change of packet sizes is performed during communication.
 7. The method according to claim 1, wherein the change of the packet sizes and the change of the start times and the end times are independent of each other in terms of time.
 8. The method according to claim 1, wherein the change in packet sizes and the change in start times and end times are controlled by a protocol that operates independently of the application protocol.
 9. The method according to claim 1, wherein the subscribers are connected to the switches in ring or line topology.
 10. The method according to claim 1, wherein a plurality of the terminals are connected in series.
 11. The method according to claim 1, wherein communication takes place by data packets within the link layer of the network.
 12. The method according to claim 1, wherein the switches are routers or servers.
 13. The method according to claim 1, wherein several controllers are present as subscribers in the network.
 14. The method according to claim 1, wherein a configuration of the controller or the switch is performed by a network management. 